1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 package org.apache.tapestry5.internal.services.compatibility;
16
17 import org.apache.tapestry5.services.compatibility.Compatibility;
18 import org.apache.tapestry5.services.compatibility.Trait;
19
20 import java.util.EnumSet;
21 import java.util.Map;
22
23 public class CompatibilityImpl implements Compatibility
24 {
25 private final EnumSet<Trait> traits;
26
27 public CompatibilityImpl(Map<Trait, Boolean> configuration)
28 {
29
30
31 traits = EnumSet.allOf(Trait.class);
32
33 for (Map.Entry<Trait, Boolean> entry : configuration.entrySet())
34 {
35 if (entry.getValue().equals(Boolean.FALSE))
36 {
37 traits.remove(entry.getKey());
38 }
39 }
40 }
41
42 public boolean enabled(Trait trait)
43 {
44 assert trait != null;
45
46 return traits.contains(trait);
47 }
48 }